/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

window.fbAsyncInit = function() {
    FB.init({
        appId      : '319306568081726',
        status     : true, 
        cookie     : true,
        xfbml      : true,
        oauth      : false
    });
    FB.Event.subscribe('auth.login', function(response){
        window.location.reload();
    });
    FB.Event.subscribe('auth.logout', function(response){
        window.location.reload();
    });
    FB.getLoginStatus(function(response) {
        if (response.status == 'connected') {
            uid = response.authResponse.userID;
            FB.api('/'+uid, function(user) {
                if (user) {
                    if(document.getElementsByName('cap')[0] != null){
                        var nome = document.getElementsByName('nome')[0];
                        nome.value = user.first_name;
                        var cognome = document.getElementsByName('cognome')[0];
                        cognome.value = user.last_name;
                        var citta = document.getElementsByName('cittaResidenza')[0];
                        citta.value = user.hometown.name;
                        var mail = document.getElementsByName('mail')[0];
                        mail.value = user.email;
                        var uname = document.getElementsByName('user')[0];
                        uname.value = user.email;
                    }
                    if(document.getElementsByName('usr') != null){
                        document.getElementsByName('usr')[0].value = user.email;
                    }
                }
            });

        } else if (response.status == 'not_authorized') {

        } else {
            if(document.getElementsByName('cap')[0] != null){
                var nome = document.getElementsByName('nome')[0];
                nome.value = '';
                var cognome = document.getElementsByName('cognome')[0];
                cognome.value = '';
                var citta = document.getElementsByName('cittaResidenza')[0];
                citta.value = '';
                var mail = document.getElementsByName('mail')[0];
                mail.value = '';
                var uname = document.getElementsByName('user')[0];
                uname.value = '';
            }
            if(document.getElementsByName('usr') != null){
                document.getElementsByName('usr')[0].value = '';
            }

        }
    });
};

(function(d){
    var js, id = 'facebook-jssdk';
    if (d.getElementById(id)) {
        return;
    }
    js = d.createElement('script');
    js.id = id;
    js.async = true;
    js.src = "//connect.facebook.net/en_US/all.js";
    d.getElementsByTagName('head')[0].appendChild(js);
}(document)); 
 
function verificaForm(modulo){
    var errore = document.getElementById("errore");
    var pattern1 = /^([a-zA-Z\xE0\xE8\xE9\xF9\xF2\xEC\x27]\s?)+$/;
    var pattern2 = /^([a-zA-Z0-9\xE0\xE8\xE9\xF9\xF2\xEC\x27]\s?)+$/;
    var pattern_numerico = /^[0-9][0-9]$/;
    var pattern_cap = /^([0-9][0-9][0-9][0-9][0-9])$/;
    var email_pattern = /[a-zA-Z0-9_\.]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,4}/;
    var password_pattern = /[a-zA-Z0-9\_\*\-\+\!\?\,\:\;\.\xE0\xE8\xE9\xF9\xF2\xEC\x27]{6,12}/;
    var nome = modulo.nome.value;
    var ris = nome.search(pattern1);
    if (nome == "") {
        errore.innerHTML = "*Nome obbligatorio. Inseriscilo!";
        modulo.nome.focus();
        return false;
    }
    if (ris<0) {
        errore.innerHTML = "*Nome non puo' contenere caratteri speciali!";
        modulo.nome.focus();
        return false;
    }
    var cognome = modulo.cognome.value;
    if (cognome == "") {
        errore.innerHTML = "*Cognome obbligatorio. Inseriscilo!";
        modulo.cognome.focus();
        return false;
    }
    cognome = cognome.search(pattern1);
    if (cognome<0) {
        errore.innerHTML = "*Cognome non puo' contenere caratteri speciali!";
        modulo.cognome.focus();
        return false;
    }
   
    var citta = modulo.cittaResidenza.value;
    if (citta == "") {
        errore.innerHTML = "*Citt&agrave obbligatoria. Inseriscila!";
        modulo.cittaResidenza.focus();
        return false;
    }
	
    citta = citta.search(pattern1);
    if (citta<0) {
        errore.innerHTML = "*Citt&agrave non puo' contenere caratteri speciali!";
        modulo.cittaResidenza.focus();
        return false;
    }
        
    var indirizzo = modulo.indirizzo.value;
    if(indirizzo == ""){
        errore.innerHTML = "*Indirizzo obbligatorio. Inseriscilo!";
        modulo.indirizzo.focus();
        return false;
    }
                
    indirizzo = indirizzo.search(pattern2);
    if (indirizzo<0) {
        errore.innerHTML = "*Indirizzo non puo' contenere caratteri speciali!";
        modulo.indirizzo.focus();
        return false;
    }
       
    cap = modulo.cap.value;
    if (cap == "") {
        errore.innerHTML = "*Cap obbligatorio. Inseriscilo!";
        modulo.cap.focus();
        return false;
    }
    cap = cap.search(pattern_cap);
    if (cap<0) {
        errore.innerHTML = "*Il cap deve essere numerico e deve avere 5 cifre!";
        modulo.cap.focus();
        return false;
    }
        
    var tagliaPantaloni = modulo.tagliaPantaloni.value;
    if(!tagliaPantaloni.equals("")){
        tagliaPantaloni= tagliaPantaloni.search(pattern_numerico);
        if (tagliaPantaloni<0) {
            errore.innerHTML = "*Formato Taglia Pantaloni sbagliato! Deve essere un numero di due cifre";
            modulo.tagliaPantaloni.focus();
            return false;
        }
    }
            
    var tagliaScarpe = modulo.tagliaScarpe.value;
    if(!tagliaScarpe.equals("")){
        tagliaScarpe = tagliaScarpe.search(pattern_numerico);
        if (tagliaScarpe<0) {
            errore.innerHTML = "*Formato Taglia Maglia sbagliato! Deve essere un numero di 2 cifre";
            modulo.tagliaScarpe.focus();
            return false;
        }
    }
    var mail = modulo.mail.value;
    if ((mail == "")) {
        errore.innerHTML = "*E-mail obbligatoria. Inseriscila!";
        modulo.mail.focus();
        return false;
    }
    mail = mail.search(email_pattern);
    if (mail<0) {
        errore.innerHTML = "*Formato e-mail sbagliato!";
        modulo.mail.focus();
        return false;
    }
    var user = modulo.user.value;
    if (user == "") {
        errore.innerHTML = "*Username obbligatorio. Inseriscilo!";
        modulo.user.focus();
        return false;
    }
    user = user.search(pattern1);
    if (user<0) {
        errore.innerHTML = "*Username non puo' contenere caratteri speciali!";
        modulo.user.focus();
        return false;
    }
    var pwd1 = modulo.password.value;
    var pwd2 = modulo.passwordw.value;
    if (pwd1 == "") {
        errore.innerHTML = "*Password obbligatoria. Inseriscila!";
        modulo.password.focus();
        return false;
    }
    var ris = pwd1.search(password_pattern);
    if (ris<0) {
        errore.innerHTML = "*Formato password errato!";
        modulo.password.focus();
        return false;
    }
    if (pwd1!=pwd2) {
        errore.innerHTML = "*Le password devono coincidere!";
        modulo.password.focus();
        return false;
    }
        
    return true;
}

var httpRequest; 
   
/** 
    * This method is called when the author is selected 
    * It creates XMLHttpRequest object to communicate with the  
    * servlet  
    */ 
function getModello(marca) 
{ 
    var url = 'http://localhost:8080/LocalitaSciistica-war/GetModello?marcatipo=' + marca;
    var url2 = 'http://localhost:8080/LocalitaSciistica-war/GetTaglia?tipo=' + marca;
        
    if (window.ActiveXObject) 
    { 
        httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    else if (window.XMLHttpRequest) 
    { 
        httpRequest = new XMLHttpRequest(); 
    } 
    httpRequest.open("GET", url, false); 
        
    httpRequest.onreadystatechange = function() {
        processRequest1();
    };
    httpRequest.send(null);
    httpRequest.open("GET", url2, false);
    httpRequest.onreadystatechange = function() {
        processRequest2(false);
    };
    httpRequest.send(null);
//getTaglia(marca,false);
} 
   
/** 
    * This is the call back method 
    * If the call is completed when the readyState is 4 
    * and if the HTTP is successfull when the status is 200 
    * update the profileSection DIV 
    */ 
function processRequest1() 
{ 
    if (httpRequest.readyState == 4) 
    { 
        if(httpRequest.status == 200) 
        { 
            //get the XML send by the servlet 
            var profileXML = httpRequest.responseText; 
            //Update the HTML 
            var profileSection = document.getElementById("modello_ajax_amm");
            profileSection.innerHTML = profileXML; 
        } 
        else 
        { 
            alert("Error loading page\n"+ httpRequest.status +":"+ httpRequest.statusText); 
        } 
    } 
}
    
function getTaglia(tipo) 
{ 
    var url = 'http://localhost:8080/LocalitaSciistica-war/GetTaglia?tipo=' + tipo;

    if (window.ActiveXObject) 
    { 
        httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    else if (window.XMLHttpRequest) 
    { 
        httpRequest = new XMLHttpRequest(); 
    } 
         
    httpRequest.open("GET", url, true); 
    httpRequest.onreadystatechange = function() {
        processRequest2(true);
    } ; 
    httpRequest.send(null); 
} 
   
/** 
    * This is the call back method 
    * If the call is completed when the readyState is 4 
    * and if the HTTP is successfull when the status is 200 
    * update the profileSection DIV 
    */ 
function processRequest2(isFiltro) 
{ 
    if (httpRequest.readyState == 4) 
    { 
        if(httpRequest.status == 200) 
        { 
            //get the XML send by the servlet 
            var profileXML = httpRequest.responseText; 
                 
            //Update the HTML
            var profileSection;
                
            if(isFiltro)
                profileSection = document.getElementById("taglia");
            else
                profileSection = document.getElementById("taglia_ajax_amm");
            profileSection.innerHTML = profileXML; 
        } 
        else 
        { 
            alert("Error loading page\n"+ httpRequest.status +":"+ httpRequest.statusText); 
        } 
    } 
}   
    
function getTipo(tipo) 
{ 
    var url = 'http://localhost:8080/LocalitaSciistica-war/GetTipo?marca=' + tipo;

    if (window.ActiveXObject) 
    { 
        httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    else if (window.XMLHttpRequest) 
    { 
        httpRequest = new XMLHttpRequest(); 
    } 
         
    httpRequest.open("GET", url, true); 
    httpRequest.onreadystatechange = function() {
        processRequest4();
    } ; 
    httpRequest.send(null); 
} 
   
/** 
    * This is the call back method 
    * If the call is completed when the readyState is 4 
    * and if the HTTP is successfull when the status is 200 
    * update the profileSection DIV 
    */ 
function processRequest4() 
{ 
    if (httpRequest.readyState == 4) 
    { 
        if(httpRequest.status == 200) 
        { 
            //get the XML send by the servlet 
            var profileXML = httpRequest.responseText; 
                 
            //Update the HTML 
            var profileSection = document.getElementById("tipo_ajax_amm");
            profileSection.innerHTML = profileXML; 
        } 
        else 
        { 
            alert("Error loading page\n"+ httpRequest.status +":"+ httpRequest.statusText); 
        } 
    } 
}
    
function getQuantita(id) 
{ 
    var url = 'http://localhost:8080/LocalitaSciistica-war/GetQuantita?id=' + id;

    if (window.ActiveXObject) 
    { 
        httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    else if (window.XMLHttpRequest) 
    { 
        httpRequest = new XMLHttpRequest(); 
    } 
         
    httpRequest.open("GET", url, true); 
    httpRequest.onreadystatechange = function() {
        processRequest3();
    } ; 
    httpRequest.send(null); 
} 
   
/** 
    * This is the call back method 
    * If the call is completed when the readyState is 4 
    * and if the HTTP is successfull when the status is 200 
    * update the profileSection DIV 
    */ 
function processRequest3() 
{ 
    if (httpRequest.readyState == 4) 
    { 
        if(httpRequest.status == 200) 
        { 
            //get the XML send by the servlet 
            var profileXML = httpRequest.responseText; 
                 
            //Update the HTML 
            var profileSection = document.getElementById("quant_prod2");
            profileSection.innerHTML = "Quantit&agrave; : " + profileXML;
        } 
        else 
        { 
            alert("Error loading page\n"+ httpRequest.status +":"+ httpRequest.statusText); 
        } 
    } 
}
    
function setPrezzo(id)
{
    var s = document.getElementsByName("quantita_"+id)[0];
    s = s.options[s.selectedIndex].value
    var p = document.getElementsByName("prezzo_singolo_"+id)[0].value;
    document.getElementsByName("prezzo_"+id)[0].innerHTML = (p * s).toFixed(1);
}

/* JavaScript per inserimento */ 

function nuovaMarca(value){
    if(value == 'aggiungi_marca'){
        document.getElementById('marca_ins').style.display = 'block';
    }
    else{
        document.getElementById('marca_ins').style.display = 'none';
        //document.write('<script src="UtilityAJAX.js">');
        getTipo(value);
    }

}

function nuovoTipo(value){
    if(value == 'aggiungi_tipo'){
        document.getElementById('tipo_ins').style.display = 'block';
    }
    else{
        document.getElementById('tipo_ins').style.display = 'none';
        getModello(value);
        
    }
}

function nuovoModello(value){
    if(value == 'aggiungi_modello'){
        document.getElementById('modello_ins').style.display = 'block';
    }
    else{
        document.getElementById('modello_ins').style.display = 'none';
    }
}

function nuovaTaglia(value){
    if(value == 'aggiungi_taglia'){
        document.getElementById('taglia_ins').style.display = 'block';
    }
    else{
        document.getElementById('taglia_ins').style.display = 'none';
    }
}

/* FINE JavaScript per inserimento */ 

/* INIZIO JavaScript per carrello */ 
function setPrezzo(id)
{
    var s = document.getElementsByName("quantita_"+id)[0];
    s = s.options[s.selectedIndex].value;
    var p = document.getElementsByName("prezzo_singolo_"+id)[0].value;
    document.getElementsByName("prezzo_"+id)[0].innerHTML = (p * s).toFixed(1);
}

function chkCheckbox(click, other){
    if(click.checked != true){
        other.disabled = false;
    }
    else{
        other.checked = false;
        other.disabled = true;
    }
        
}
/* FINE JavaScript per carrello */     
